perm filename PERM.EX[206,JMC] blob
sn#005327 filedate 1971-01-05 generic text, type T, neo UTF8
00100 COMPUTER SCIENCE DEPARTMENT
00200 STANFORD UNIVERSITY
00300
00400
00500 CS 206 COMPUTING WITH SYMBOLIC EXPRESSIONS FALL 1970
00600
00700 PROJECT TO FIND THE SUBGROUPS OF A PERMUTATION GROUP.
00800
00900 Given a list u of permutations subgr [u] is a list of the
01000 subgroups of the permutation group generated by the permutations in u.
01100 Each of these subgroups is represented by a set of its generators.
01200 (You may choose to list all the elements of the subgroup.)
01300 A preliminary function is clearly grp [u] that gives a list of
01400 the permutations generated by u.
01500 Example: Suppose u=(((1 2)(3 4))((1 3)(2 4))).
01600 Then
01700 grp [u]=(NIL ((1 2)(3 4))((1 3)(2 4))((1 4)(2 3)))
01800 and
01900 subgrp[u]=((NIL) (NIL ((1 2) (3 4)))
02000 (NIL ((1 3) (2 4)))
02100 (NIL ((1 4) (2 3)))
02200 (NIL ((1 2) (3 4)) ((1 3) (2 4)) ((1 4) (2 3))))
02300
02400 For more substantial groups these lists will be quite
02500 lengthy.
02600 In class, we discussed a program to apply a permutation to a
02700 number, and we discussed informally the rules for multiplying two
02800 permutations.
02900
03000 prot[u,v] is the first program you will have to write. You will also have
03100 to make sure that permutations are written in the standard
03200 order in which the cycle containing the smallest number is written first.
03300 with that number first in the cycle, etc.